import Vue from "vue";
import Vuex from "vuex";
import  { getlunbo}  from "@api/home" 

Vue.use(Vuex);

export default new Vuex.Store({
  state: {
    count:"vuex123",
    img:[ 
      {  img:"https://img1.baidu.com/it/u=2020055634,9548553&fm=253&fmt=auto&app=138&f=JPEG?w=658&h=370"   },
      {  img:"https://img1.baidu.com/it/u=919705406,152544108&fm=253&fmt=auto&app=138&f=JPEG?w=1280&h=482"   }
     , {  img:"https://img1.baidu.com/it/u=2380423497,3235001906&fm=253&fmt=auto&app=138&f=JPEG?w=400&h=400"   }

  ] 
  },
  // state 数据仓库 ,专门存放数据, vue的所有实例 都可以来着获取

  //  state 专门存数据, 
  // getters 获取数据
  // mutations 修改数据 同步修改  通过函数来执行, 可以通知所有的组件 都去更新数据 
  getters: {
    getcount(state){
        return state.count+"通过getter获取"
    }
  },
  mutations: {
    CHANGDECOUNT(state ,data){
        state.count = data
    },
    IMG(state,data){
        state.img = data
    }
  },
  // 异步修改 => 异步 只是说执行一些异步任务, 但是最终修改数据 要用同步修改
  actions: {
    vuexlogin(store){
      getlunbo().then( res => { 
        store.commit("IMG",res.data)
      })
    }
  },
  modules: {},
});
